/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package ec.edu.ups.cidi.siia.plamdep.analizadorLexico.wordnet;

import java.sql.*;

import javax.annotation.PostConstruct;
import javax.naming.InitialContext;
import javax.sql.DataSource;

import ec.edu.ups.cidi.siia.plamdep.utils.interfaces.IConexionBD;


public class ConexionBDH2 implements IConexionBD{
    
    static Connection con  = null;
    static Statement  st   = null;  
    static ResultSet  res  = null; 
    static String     sql  = null;
    
    /**
     * Devuelve un resultado de una consulta 
     */
    
    public ResultSet consulta(String query)
    {
        ResultSet rs=null;
        try 
        {   Statement sentencia = con.createStatement();
            rs=sentencia.executeQuery(query);
        } catch (SQLException e) { 
            e.printStackTrace();
        }
        return rs;
    }
    /**
     * Ejecuta sentencias sql sobre la BD
     * @param codigo
     */
     public void ejecutar(String codigo){
       
      
            try{
            PreparedStatement pstm = con.prepareStatement(codigo);
            pstm.execute();
             
            pstm.close();
            }catch(Exception e){ e.printStackTrace();
                
            } 
   }
     
     /**
      * Obtiene una conexion a la BD desde el Datasource
      */
  
    
    public void conectar() 
    {
    	try {
			InitialContext ic = new InitialContext();
			DataSource ds = (DataSource) ic.lookup("java:jboss/datasources/plamdepDS");
			con = ds.getConnection();
			System.out.println("BASE DE DATOS LEXICA CONECTADA");
		} catch (Exception e) {
			e.printStackTrace();
		}
    }
    
    public void cerrar() {
    	try {
			con.close();
		} catch (SQLException e) {
			e.printStackTrace();
		}
    }
    
    public boolean isConectado() {
        try {
			return !con.isClosed();
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
        return false;
    }
}
